#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
//void reve(char* str)
//{
//	int len = strlen(str);
//	char t = *str;
//	*str = *(str + len - 1);
//	*(str + len - 1) = '\0';
//	if (strlen(str + 1) >= 2)
//	{
//		reve(str + 1);
//	}
//	*(str + len - 1) = t;
//}
//int main()
//{
//	char arr[10] = "abcdefg";
//	reve(arr);
//	printf("%s", arr);
//	return 0;
//}
//int main()
//{
//	int a = 0;
//	int b = 0;
//	int max = a > b ? a : b;
//	while (1)
//	{
//		if (max % a == 0 && max % b == 0)
//		{
//			printf("%d", max);
//			break;
//		}
//		else
//		{
//			max++;
//		}
//	}
//	return 0;
//}
int main()
{
	char arr[100] = { 0 };
	gets(arr);
	int len=strlen(arr);
	char* str = arr[len];
	char* t = arr[len];
	while (str >= arr)
	{
		if (*str == ' ')
		{
			t = str + 1;
			printf("%s ", t);
			str = '\0';
		}
		else
		{
			str--;
		}
	}
	str = str + 1;
	printf("%s", str);
	return 0;
}